home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1989-10-03 | 4.1 KB | [TEXT/MPS ] |
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
Confidence | Program | Detection | Match Type | Support
|
---|
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, inited, Tue Oct 3 17:14:08 1989, modified Tue Oct 3 17:14:08 1989, creator 'MPS ', type ASCII, 3309 bytes "Terminal.make" , at 0xd6d 701 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [MPS ] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0d 54 65 72 6d 69 6e | 61 6c 2e 6d 61 6b 65 00 |..Termin|al.make.|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4d 50 53 | 20 01 00 00 64 00 00 00 |.TEXTMPS| ...d...|
|00000050| 00 00 00 00 00 0c ed 00 | 00 02 bd a1 4e d1 a0 a1 |........|....N...|
|00000060| 4e d1 a0 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |N.......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 8a ef 00 00 |........|........|
|00000080| 20 4d 67 72 20 0d 09 09 | 09 09 09 74 6f 20 67 65 | Mgr ...|...to ge|
|00000090| 74 20 74 68 65 20 72 65 | 61 6c 20 72 65 73 6f 75 |t the re|al resou|
|000000a0| 72 63 65 20 6e 75 6d 62 | 65 72 73 20 7d 0d 09 09 |rce numb|ers }...|
|000000b0| 09 49 46 20 28 53 74 72 | 52 65 73 49 44 20 3d 20 |.IF (Str|ResID = |
|000000c0| 2d 31 29 20 54 48 45 4e | 0d 09 09 09 09 42 45 47 |-1) THEN|.....BEG|
|000000d0| 49 4e 0d 09 09 09 09 09 | 7b 20 53 6f 6d 65 74 68 |IN......|{ Someth|
|000000e0| 69 6e 67 20 69 73 20 67 | 6f 6f 66 79 20 77 69 74 |ing is g|oofy wit|
|000000f0| 68 20 6d 65 6d 6f 72 79 | 20 61 6c 6c 6f 63 61 74 |h memory| allocat|
|00000100| 69 6f 6e 2c 20 62 65 74 | 74 65 72 0d 09 09 09 09 |ion, bet|ter.....|
|00000110| 09 09 6c 65 74 20 65 76 | 65 72 79 62 6f 64 79 20 |..let ev|erybody |
|00000120| 6b 6e 6f 77 2c 20 69 6e | 63 6c 75 64 69 6e 67 20 |know, in|cluding |
|00000130| 74 68 65 20 54 65 72 6d | 69 6e 61 6c 20 4d 67 72 |the Term|inal Mgr|
|00000140| 2c 20 0d 09 09 09 09 09 | 09 74 68 65 6e 20 65 78 |, ......|.then ex|
|00000150| 69 74 2e 20 7d 0d 09 09 | 09 09 09 68 54 65 72 6d |it. }...|...hTerm|
|00000160| 5e 5e 2e 65 72 72 43 6f | 64 65 20 3a 3d 20 4d 65 |^^.errCo|de := Me|
|00000170| 6d 45 72 72 6f 72 3b 0d | 09 09 09 09 09 54 65 72 |mError;.|.....Ter|
|00000180| 6d 54 6f 6f 6c 49 6e 69 | 74 20 3a 3d 20 4c 6f 6e |mToolIni|t := Lon|
|00000190| 67 49 6e 74 28 4d 65 6d | 45 72 72 6f 72 29 3b 0d |gInt(Mem|Error);.|
|000001a0| 09 09 09 09 09 45 78 69 | 74 28 54 65 72 6d 54 6f |.....Exi|t(TermTo|
|000001b0| 6f 6c 49 6e 69 74 29 3b | 0d 09 09 09 09 45 4e 44 |olInit);|.....END|
|000001c0| 3b 0d 09 09 09 70 72 69 | 76 61 74 65 50 74 72 5e |;....pri|vatePtr^|
|000001d0| 2e 63 75 72 72 65 6e 74 | 4c 61 6e 67 75 61 67 65 |.current|Language|
|000001e0| 20 3a 3d 20 53 74 72 52 | 65 73 49 44 3b 0d 09 09 | := StrR|esID;...|
|000001f0| 09 68 54 65 72 6d 5e 5e | 2e 74 6d 50 72 69 76 61 |.hTerm^^|.tmPriva|
|00000200| 74 65 20 3a 3d 20 50 74 | 72 28 70 72 69 76 61 74 |te := Pt|r(privat|
|00000210| 65 50 74 72 29 3b 0d 09 | 09 45 4e 44 3b 0d 45 4e |ePtr);..|.END;.EN|
|00000220| 44 3b 0d 0d 0d 50 52 4f | 43 45 44 55 52 45 20 54 |D;...PRO|CEDURE T|
|00000230| 65 72 6d 54 6f 6f 6c 44 | 69 73 70 6f 73 65 28 68 |ermToolD|ispose(h|
|00000240| 54 65 72 6d 3a 20 54 65 | 72 6d 48 61 6e 64 6c 65 |Term: Te|rmHandle|
|00000250| 29 3b 0d 42 45 47 49 4e | 0d 09 7b 20 53 74 61 6e |);.BEGIN|..{ Stan|
|00000260| 64 61 72 64 20 63 6c 65 | 61 6e 75 70 20 6f 66 20 |dard cle|anup of |
|00000270| 6f 75 72 20 70 72 69 76 | 61 74 65 20 64 61 74 61 |our priv|ate data|
|00000280| 20 73 74 72 75 63 74 75 | 72 65 2e 20 20 53 69 6e | structu|re. Sin|
|00000290| 63 65 20 74 68 65 20 0d | 09 09 54 65 72 6d 69 6e |ce the .|..Termin|
|000002a0| 61 6c 20 6d 61 6e 61 67 | 65 72 20 64 6f 65 73 6e |al manag|er doesn|
|000002b0| 27 74 20 72 65 61 6c 6c | 79 20 6b 6e 6f 77 20 69 |'t reall|y know i|
|000002c0| 74 27 73 20 68 65 72 65 | 2c 20 77 65 20 64 65 6c |t's here|, we del|
|000002d0| 65 74 65 20 69 74 0d 09 | 09 6f 75 72 73 65 6c 76 |ete it..|.ourselv|
|000002e0| 65 73 2e 20 20 54 68 65 | 20 74 6f 6f 6c 62 6f 78 |es. The| toolbox|
|000002f0| 20 26 20 61 70 70 6c 69 | 63 61 74 69 6f 6e 20 74 | & appli|cation t|
|00000300| 61 6b 65 20 63 61 72 65 | 20 6f 66 20 6f 74 68 65 |ake care| of othe|
|00000310| 72 0d 09 09 63 6c 65 61 | 6e 75 70 2e 20 7d 0d 09 |r...clea|nup. }..|
|00000320| 44 69 73 70 6f 73 50 74 | 72 28 50 74 72 28 68 54 |DisposPt|r(Ptr(hT|
|00000330| 65 72 6d 5e 5e 2e 74 6d | 50 72 69 76 61 74 65 29 |erm^^.tm|Private)|
|00000340| 29 3b 0d 45 4e 44 3b 0d | 0d 0d 0d 0d 7b 20 42 65 |);.END;.|....{ Be|
|00000350| 67 69 6e 6e 69 6e 67 20 | 68 65 72 65 2c 20 75 6e |ginning |here, un|
|00000360| 74 69 6c 20 74 68 65 20 | 65 6e 64 20 6f 66 20 74 |til the |end of t|
|00000370| 68 65 20 6d 6f 64 75 6c | 65 2c 20 49 20 77 69 6c |he modul|e, I wil|
|00000380| 6c 20 72 65 70 65 61 74 | 65 64 6c 79 20 0d 75 74 |l repeat|edly .ut|
|00000390| 69 6c 69 7a 65 20 61 20 | 76 65 72 79 20 73 69 6d |ilize a |very sim|
|000003a0| 70 6c 65 20 65 72 72 6f | 72 20 63 68 65 63 6b 65 |ple erro|r checke|
|000003b0| 72 20 66 6f 72 20 65 61 | 63 68 20 70 72 6f 63 65 |r for ea|ch proce|
|000003c0| 64 75 72 65 20 6f 72 20 | 66 75 6e 63 74 69 6f 6e |dure or |function|
|000003d0| 2e 20 0d 4e 6f 72 6d 61 | 6c 6c 79 20 61 20 74 6f |. .Norma|lly a to|
|000003e0| 6f 6c 20 77 6f 75 6c 64 | 20 68 61 76 65 20 74 6f |ol would| have to|
|000003f0| 20 70 65 72 66 6f 72 6d | 20 6d 6f 72 65 20 75 73 | perform| more us|
|00000400| 65 66 75 6c 20 75 74 69 | 6c 69 74 79 2c 20 62 75 |eful uti|lity, bu|
|00000410| 74 20 0d 22 61 74 20 70 | 72 65 73 73 20 74 69 6d |t ."at p|ress tim|
|00000420| 65 22 20 49 20 73 69 6d | 70 6c 79 20 77 61 6e 74 |e" I sim|ply want|
|00000430| 65 64 20 74 68 69 73 20 | 74 6f 6f 6c 20 74 6f 20 |ed this |tool to |
|00000440| 63 68 65 63 6b 20 74 68 | 65 20 74 6f 6f 6c 62 6f |check th|e toolbo|
|00000450| 78 20 0d 63 61 6c 6c 69 | 6e 67 20 63 6f 6e 76 65 |x .calli|ng conve|
|00000460| 6e 74 69 6f 6e 73 2e 20 | 20 43 53 48 20 3a 29 20 |ntions. | CSH :) |
|00000470| 20 20 20 7d 0d 0d 0d 0d | 50 52 4f 43 45 44 55 52 | }....|PROCEDUR|
|00000480| 45 0d 09 54 65 72 6d 54 | 6f 6f 6c 41 63 74 69 76 |E..TermT|oolActiv|
|00000490| 61 74 65 28 68 54 65 72 | 6d 3a 20 54 65 72 6d 48 |ate(hTer|m: TermH|
|000004a0| 61 6e 64 6c 65 29 3b 0d | 56 41 52 0d 09 74 68 65 |andle);.|VAR..the|
|000004b0| 53 74 61 74 65 3a 20 53 | 69 67 6e 65 64 42 79 74 |State: S|ignedByt|
|000004c0| 65 3b 0d 09 70 50 72 69 | 76 61 74 65 3a 20 54 45 |e;..pPri|vate: TE|
|000004d0| 52 4d 49 4e 41 4c 50 72 | 69 76 61 74 65 50 74 72 |RMINALPr|ivatePtr|
|000004e0| 3b 0d 09 70 43 6f 6e 66 | 69 67 3a 20 54 65 72 6d |;..pConf|ig: Term|
|000004f0| 69 6e 61 6c 50 74 72 3b | 0d 09 74 68 65 50 72 6f |inalPtr;|..thePro|
|00000500| 63 49 44 3a 20 49 6e 74 | 65 67 65 72 3b 0d 42 45 |cID: Int|eger;.BE|
|00000510| 47 49 4e 0d 09 74 68 65 | 53 74 61 74 65 20 3a 3d |GIN..the|State :=|
|00000520| 20 48 47 65 74 53 74 61 | 74 65 28 48 61 6e 64 6c | HGetSta|te(Handl|
|00000530| 65 28 68 54 65 72 6d 29 | 29 3b 0d 09 48 4c 6f 63 |e(hTerm)|);..HLoc|
|00000540| 6b 28 48 61 6e 64 6c 65 | 28 68 54 65 72 6d 29 29 |k(Handle|(hTerm))|
|00000550| 3b 0d 09 70 50 72 69 76 | 61 74 65 20 3a 3d 20 54 |;..pPriv|ate := T|
|00000560| 45 52 4d 49 4e 41 4c 50 | 72 69 76 61 74 65 50 74 |ERMINALP|rivatePt|
|00000570| 72 28 68 54 65 72 6d 5e | 5e 2e 74 6d 50 72 69 76 |r(hTerm^|^.tmPriv|
|00000580| 61 74 65 29 3b 0d 09 70 | 43 6f 6e 66 69 67 20 3a |ate);..p|Config :|
|00000590| 3d 20 54 65 72 6d 69 6e | 61 6c 50 74 72 28 68 54 |= Termin|alPtr(hT|
|000005a0| 65 72 6d 5e 5e 2e 63 6f | 6e 66 69 67 29 3b 0d 09 |erm^^.co|nfig);..|
|000005b0| 74 68 65 50 72 6f 63 49 | 44 20 3a 3d 20 28 68 54 |theProcI|D := (hT|
|000005c0| 65 72 6d 5e 5e 2e 70 72 | 6f 63 49 44 29 3b 0d 09 |erm^^.pr|ocID);..|
|000005d0| 49 46 20 28 74 68 65 50 | 72 6f 63 49 44 20 3c 20 |IF (theP|rocID < |
|000005e0| 33 29 20 4f 52 20 28 70 | 43 6f 6e 66 69 67 20 3d |3) OR (p|Config =|
|000005f0| 20 4e 49 4c 29 20 4f 52 | 20 28 70 50 72 69 76 61 | NIL) OR| (pPriva|
|00000600| 74 65 20 3d 20 4e 49 4c | 29 20 54 48 45 4e 0d 09 |te = NIL|) THEN..|
|00000610| 09 44 65 62 75 67 53 74 | 72 28 27 54 68 65 20 70 |.DebugSt|r('The p|
|00000620| 69 70 65 20 69 73 20 62 | 6c 6f 63 6b 65 64 20 66 |ipe is b|locked f|
|00000630| 72 6f 6d 20 54 65 72 6d | 54 6f 6f 6c 41 63 74 69 |rom Term|ToolActi|
|00000640| 76 61 74 65 27 29 3b 0d | 09 48 53 65 74 53 74 61 |vate');.|.HSetSta|
|00000650| 74 65 28 48 61 6e 64 6c | 65 28 68 54 65 72 6d 29 |te(Handl|e(hTerm)|
|00000660| 2c 20 74 68 65 53 74 61 | 74 65 29 3b 0d 45 4e 44 |, theSta|te);.END|
|00000670| 3b 0d 0d 0d 50 52 4f 43 | 45 44 55 52 45 0d 09 54 |;...PROC|EDURE..T|
|00000680| 65 72 6d 54 6f 6f 6c 44 | 65 61 63 74 69 76 61 74 |ermToolD|eactivat|
|00000690| 65 28 68 54 65 72 6d 3a | 20 54 65 72 6d 48 61 6e |e(hTerm:| TermHan|
|000006a0| 64 6c 65 29 3b 0d 56 41 | 52 0d 09 74 68 65 53 74 |dle);.VA|R..theSt|
|000006b0| 61 74 65 3a 20 53 69 67 | 6e 65 64 42 79 74 65 3b |ate: Sig|nedByte;|
|000006c0| 0d 09 70 50 72 69 76 61 | 74 65 3a 20 54 45 52 4d |..pPriva|te: TERM|
|000006d0| 49 4e 41 4c 50 72 69 76 | 61 74 65 50 74 72 3b 0d |INALPriv|atePtr;.|
|000006e0| 09 70 43 6f 6e 66 69 67 | 3a 20 54 65 72 6d 69 6e |.pConfig|: Termin|
|000006f0| 61 6c 50 74 72 3b 0d 09 | 74 68 65 50 72 6f 63 49 |alPtr;..|theProcI|
|00000700| 44 3a 20 49 6e 74 65 67 | 65 72 3b 0d 42 45 47 49 |D: Integ|er;.BEGI|
|00000710| 4e 0d 09 74 68 65 53 74 | 61 74 65 20 3a 3d 20 48 |N..theSt|ate := H|
|00000720| 47 65 74 53 74 61 74 65 | 28 48 61 6e 64 6c 65 28 |GetState|(Handle(|
|00000730| 68 54 65 72 6d 29 29 3b | 0d 09 48 4c 6f 63 6b 28 |hTerm));|..HLock(|
|00000740| 48 61 6e 64 6c 65 28 68 | 54 65 72 6d 29 29 3b 0d |Handle(h|Term));.|
|00000750| 09 70 50 72 69 76 61 74 | 65 20 3a 3d 20 54 45 52 |.pPrivat|e := TER|
|00000760| 4d 49 4e 41 4c 50 72 69 | 76 61 74 65 50 74 72 28 |MINALPri|vatePtr(|
|00000770| 68 54 65 72 6d 5e 5e 2e | 74 6d 50 72 69 76 61 74 |hTerm^^.|tmPrivat|
|00000780| 65 29 3b 0d 09 70 43 6f | 6e 66 69 67 20 3a 3d 20 |e);..pCo|nfig := |
|00000790| 54 65 72 6d 69 6e 61 6c | 50 74 72 28 68 54 65 72 |Terminal|Ptr(hTer|
|000007a0| 6d 5e 5e 2e 63 6f 6e 66 | 69 67 29 3b 0d 09 74 68 |m^^.conf|ig);..th|
|000007b0| 65 50 72 6f 63 49 44 20 | 3a 3d 20 28 68 54 65 72 |eProcID |:= (hTer|
|000007c0| 6d 5e 5e 2e 70 72 6f 63 | 49 44 29 3b 0d 09 49 46 |m^^.proc|ID);..IF|
|000007d0| 20 28 74 68 65 50 72 6f | 63 49 44 20 3c 20 33 29 | (thePro|cID < 3)|
|000007e0| 20 4f 52 20 28 70 43 6f | 6e 66 69 67 20 3d 20 4e | OR (pCo|nfig = N|
|000007f0| 49 4c 29 20 4f 52 20 28 | 70 50 72 69 76 61 74 65 |IL) OR (|pPrivate|
|00000800| 20 3d 20 4e 49 4c 29 20 | 54 48 45 4e 0d 09 09 44 | = NIL) |THEN...D|
|00000810| 65 62 75 67 53 74 72 28 | 27 54 68 65 20 70 69 70 |ebugStr(|'The pip|
|00000820| 65 20 69 73 20 62 6c 6f | 63 6b 65 64 20 66 72 6f |e is blo|cked fro|
|00000830| 6d 20 54 65 72 6d 54 6f | 6f 6c 44 65 61 63 74 69 |m TermTo|olDeacti|
|00000840| 76 61 74 65 27 29 3b 0d | 09 48 53 65 74 53 74 61 |vate');.|.HSetSta|
|00000850| 74 65 28 48 61 6e 64 6c | 65 28 68 54 65 72 6d 29 |te(Handl|e(hTerm)|
|00000860| 2c 20 74 68 65 53 74 61 | 74 65 29 3b 0d 45 4e 44 |, theSta|te);.END|
|00000870| 3b 0d 0d 0d 50 52 4f 43 | 45 44 55 52 45 20 0d 09 |;...PROC|EDURE ..|
|00000880| 54 65 72 6d 54 6f 6f 6c | 53 75 73 70 65 6e 64 28 |TermTool|Suspend(|
|00000890| 68 54 65 72 6d 3a 20 54 | 65 72 6d 48 61 6e 64 6c |hTerm: T|ermHandl|
|000008a0| 65 29 3b 0d 56 41 52 0d | 09 74 68 65 53 74 61 74 |e);.VAR.|.theStat|
|000008b0| 65 3a 20 53 69 67 6e 65 | 64 42 79 74 65 3b 0d 09 |e: Signe|dByte;..|
|000008c0| 70 50 72 69 76 61 74 65 | 3a 20 54 45 52 4d 49 4e |pPrivate|: TERMIN|
|000008d0| 41 4c 50 72 69 76 61 74 | 65 50 74 72 3b 0d 09 70 |ALPrivat|ePtr;..p|
|000008e0| 43 6f 6e 66 69 67 3a 20 | 54 65 72 6d 69 6e 61 6c |Config: |Terminal|
|000008f0| 50 74 72 3b 0d 09 74 68 | 65 50 72 6f 63 49 44 3a |Ptr;..th|eProcID:|
|00000900| 20 49 6e 74 65 67 65 72 | 3b 0d 42 45 47 49 4e 0d | Integer|;.BEGIN.|
|00000910| 09 74 68 65 53 74 61 74 | 65 20 3a 3d 20 48 47 65 |.theStat|e := HGe|
|00000920| 74 53 74 61 74 65 28 48 | 61 6e 64 6c 65 28 68 54 |tState(H|andle(hT|
|00000930| 65 72 6d 29 29 3b 0d 09 | 48 4c 6f 63 6b 28 48 61 |erm));..|HLock(Ha|
|00000940| 6e 64 6c 65 28 68 54 65 | 72 6d 29 29 3b 0d 09 70 |ndle(hTe|rm));..p|
|00000950| 50 72 69 76 61 74 65 20 | 3a 3d 20 54 45 52 4d 49 |Private |:= TERMI|
|00000960| 4e 41 4c 50 72 69 76 61 | 74 65 50 74 72 28 68 54 |NALPriva|tePtr(hT|
|00000970| 65 72 6d 5e 5e 2e 74 6d | 50 72 69 76 61 74 65 29 |erm^^.tm|Private)|
|00000980| 3b 0d 09 70 43 6f 6e 66 | 69 67 20 3a 3d 20 54 65 |;..pConf|ig := Te|
|00000990| 72 6d 69 6e 61 6c 50 74 | 72 28 68 54 65 72 6d 5e |rminalPt|r(hTerm^|
|000009a0| 5e 2e 63 6f 6e 66 69 67 | 29 3b 0d 09 74 68 65 50 |^.config|);..theP|
|000009b0| 72 6f 63 49 44 20 3a 3d | 20 28 68 54 65 72 6d 5e |rocID :=| (hTerm^|
|000009c0| 5e 2e 70 72 6f 63 49 44 | 29 3b 0d 09 49 46 20 28 |^.procID|);..IF (|
|000009d0| 74 68 65 50 72 6f 63 49 | 44 20 3c 20 33 29 20 4f |theProcI|D < 3) O|
|000009e0| 52 20 28 70 43 6f 6e 66 | 69 67 20 3d 20 4e 49 4c |R (pConf|ig = NIL|
|000009f0| 29 20 4f 52 20 28 70 50 | 72 69 76 61 74 65 20 3d |) OR (pP|rivate =|
|00000a00| 20 4e 49 4c 29 20 54 48 | 45 4e 0d 09 09 44 65 62 | NIL) TH|EN...Deb|
|00000a10| 75 67 53 74 72 28 27 54 | 68 65 20 70 69 70 65 20 |ugStr('T|he pipe |
|00000a20| 69 73 20 62 6c 6f 63 6b | 65 64 20 66 72 6f 6d 20 |is block|ed from |
|00000a30| 54 65 72 6d 54 6f 6f 6c | 53 75 73 70 65 6e 64 27 |TermTool|Suspend'|
|00000a40| 29 3b 0d 09 48 53 65 74 | 53 74 61 74 65 28 48 61 |);..HSet|State(Ha|
|00000a50| 6e 64 6c 65 28 68 54 65 | 72 6d 29 2c 20 74 68 65 |ndle(hTe|rm), the|
|00000a60| 53 74 61 74 65 29 3b 0d | 45 4e 44 3b 0d 0d 0d 50 |State);.|END;...P|
|00000a70| 52 4f 43 45 44 55 52 45 | 20 0d 09 54 65 72 6d 54 |ROCEDURE| ..TermT|
|00000a80| 6f 6f 6c 52 65 73 75 6d | 65 28 68 54 65 72 6d 3a |oolResum|e(hTerm:|
|00000a90| 20 54 65 72 6d 48 61 6e | 64 6c 65 29 3b 0d 56 41 | TermHan|dle);.VA|
|00000aa0| 52 0d 09 74 68 65 53 74 | 61 74 65 3a 20 53 69 67 |R..theSt|ate: Sig|
|00000ab0| 6e 65 64 42 79 74 65 3b | 0d 09 70 50 72 69 76 61 |nedByte;|..pPriva|
|00000ac0| 74 65 3a 20 54 45 52 4d | 49 4e 41 4c 50 72 69 76 |te: TERM|INALPriv|
|00000ad0| 61 74 65 50 74 72 3b 0d | 09 70 43 6f 6e 66 69 67 |atePtr;.|.pConfig|
|00000ae0| 3a 20 54 65 72 6d 69 6e | 61 6c 50 74 72 3b 0d 09 |: Termin|alPtr;..|
|00000af0| 74 68 65 50 72 6f 63 49 | 44 3a 20 49 6e 74 65 67 |theProcI|D: Integ|
|00000b00| 65 72 3b 0d 42 45 47 49 | 4e 0d 09 74 68 65 53 74 |er;.BEGI|N..theSt|
|00000b10| 61 74 65 20 3a 3d 20 48 | 47 65 74 53 74 61 74 65 |ate := H|GetState|
|00000b20| 28 48 61 6e 64 6c 65 28 | 68 54 65 72 6d 29 29 3b |(Handle(|hTerm));|
|00000b30| 0d 09 48 4c 6f 63 6b 28 | 48 61 6e 64 6c 65 28 68 |..HLock(|Handle(h|
|00000b40| 54 65 72 6d 29 29 3b 0d | 09 70 50 72 69 76 61 74 |Term));.|.pPrivat|
|00000b50| 65 20 3a 3d 20 54 45 52 | 4d 49 4e 41 4c 50 72 69 |e := TER|MINALPri|
|00000b60| 76 61 74 65 50 74 72 28 | 68 54 65 72 6d 5e 5e 2e |vatePtr(|hTerm^^.|
|00000b70| 74 6d 50 72 69 76 61 74 | 65 29 3b 0d 09 70 43 6f |tmPrivat|e);..pCo|
|00000b80| 6e 66 69 67 20 3a 3d 20 | 54 65 72 6d 69 6e 61 6c |nfig := |Terminal|
|00000b90| 50 74 72 28 68 54 65 72 | 6d 5e 5e 2e 63 6f 6e 66 |Ptr(hTer|m^^.conf|
|00000ba0| 69 67 29 3b 0d 09 74 68 | 65 50 72 6f 63 49 44 20 |ig);..th|eProcID |
|00000bb0| 3a 3d 20 28 68 54 65 72 | 6d 5e 5e 2e 70 72 6f 63 |:= (hTer|m^^.proc|
|00000bc0| 49 44 29 3b 0d 09 49 46 | 20 28 74 68 65 50 72 6f |ID);..IF| (thePro|
|00000bd0| 63 49 44 20 3c 20 33 29 | 20 4f 52 20 28 70 43 6f |cID < 3)| OR (pCo|
|00000be0| 6e 66 69 67 20 3d 20 4e | 49 4c 29 20 4f 52 20 28 |nfig = N|IL) OR (|
|00000bf0| 70 50 72 69 76 61 74 65 | 20 3d 20 4e 49 4c 29 20 |pPrivate| = NIL) |
|00000c00| 54 48 45 4e 0d 09 09 44 | 65 62 75 67 53 74 72 28 |THEN...D|ebugStr(|
|00000c10| 27 54 68 65 20 70 69 70 | 65 20 69 73 20 62 6c 6f |'The pip|e is blo|
|00000c20| 63 6b 65 64 20 66 72 6f | 6d 20 54 65 72 6d 54 6f |cked fro|m TermTo|
|00000c30| 6f 6c 52 65 73 75 6d 65 | 27 29 3b 0d 09 48 53 65 |olResume|');..HSe|
|00000c40| 74 53 74 61 74 65 28 48 | 61 6e 64 6c 65 28 68 54 |tState(H|andle(hT|
|00000c50| 65 72 6d 29 2c 20 74 68 | 65 53 74 61 74 65 29 3b |erm), th|eState);|
|00000c60| 0d 45 4e 44 3b 0d 0d 0d | 46 55 4e 43 54 49 4f 4e |.END;...|FUNCTION|
|00000c70| 20 0d 09 54 65 72 6d 54 | 6f 6f 6c 4d 65 6e 75 28 | ..TermT|oolMenu(|
|00000c80| 68 54 65 72 6d 3a 20 54 | 65 72 6d 48 61 6e 64 6c |hTerm: T|ermHandl|
|00000c90| 65 3b 20 70 31 2c 20 70 | 32 2c 20 70 33 3a 20 4c |e; p1, p|2, p3: L|
|00000ca0| 6f 6e 67 49 6e 74 29 3a | 20 4c 6f 6e 67 49 6e 74 |ongInt):| LongInt|
|00000cb0| 3b 0d 56 41 52 0d 09 74 | 68 65 53 74 61 74 65 3a |;.VAR..t|heState:|
|00000cc0| 20 53 69 67 6e 65 64 42 | 79 74 65 3b 0d 09 70 50 | SignedB|yte;..pP|
|00000cd0| 72 69 76 61 74 65 3a 20 | 54 45 52 4d 49 4e 41 4c |rivate: |TERMINAL|
|00000ce0| 50 72 69 76 61 74 65 50 | 74 72 3b 0d 09 70 43 6f |PrivateP|tr;..pCo|
|00000cf0| 6e 66 69 67 3a 20 54 65 | 72 6d 69 6e 61 6c 50 74 |nfig: Te|rminalPt|
|00000d00| 72 3b 0d 09 74 68 65 50 | 72 6f 63 49 44 3a 20 49 |r;..theP|rocID: I|
|00000d10| 6e 74 65 67 65 72 3b 0d | 42 45 47 49 4e 0d 09 74 |nteger;.|BEGIN..t|
|00000d20| 68 65 53 74 61 74 65 20 | 3a 3d 20 48 47 65 74 53 |heState |:= HGetS|
|00000d30| 74 61 74 65 28 48 61 6e | 64 6c 65 28 68 54 65 72 |tate(Han|dle(hTer|
|00000d40| 6d 29 29 3b 0d 09 48 4c | 6f 63 6b 28 48 61 6e 64 |m));..HL|ock(Hand|
|00000d50| 6c 65 28 68 54 65 72 6d | 29 29 3b 0d 09 70 50 72 |le(hTerm|));..pPr|
|00000d60| 69 76 61 74 65 20 3a 3d | 20 54 45 52 4d 00 00 00 |ivate :=| TERM...|
|00000d70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d80| 54 4d 4e 6f 45 72 72 29 | 3b 0d 09 0d 09 7b 20 48 |TMNoErr)|;....{ H|
|00000d90| 65 72 65 20 77 65 20 61 | 72 65 20 67 6f 69 6e 67 |ere we a|re going|
|00000da0| 20 74 6f 20 73 70 61 63 | 65 20 66 6f 72 20 6f 75 | to spac|e for ou|
|00000db0| 72 20 70 72 69 76 61 74 | 65 20 74 6f 6f 6c 20 73 |r privat|e tool s|
|00000dc0| 74 72 75 63 74 75 72 65 | 2c 20 0d 09 09 54 45 52 |tructure|, ...TER|
|00000dd0| 4d 49 4e 41 4c 50 72 69 | 76 61 74 65 52 65 63 6f |MINALPri|vateReco|
|00000de0| 72 64 2c 20 77 68 69 63 | 68 20 49 27 76 65 20 63 |rd, whic|h I've c|
|00000df0| 68 6f 73 65 6e 20 74 6f | 20 64 65 63 6c 61 72 65 |hosen to| declare|
|00000e00| 20 69 6e 20 6d 79 20 0d | 09 09 73 69 6e 67 6c 65 | in my .|..single|
|00000e10| 20 67 6c 6f 62 61 6c 20 | 75 6e 69 74 2c 20 54 65 | global |unit, Te|
|00000e20| 72 6d 47 6c 6f 62 61 6c | 55 6e 69 74 2e 70 20 7d |rmGlobal|Unit.p }|
|00000e30| 0d 09 70 72 69 76 61 74 | 65 50 74 72 20 3a 3d 20 |..privat|ePtr := |
|00000e40| 54 45 52 4d 49 4e 41 4c | 50 72 69 76 61 74 65 50 |TERMINAL|PrivateP|
|00000e50| 74 72 28 4e 65 77 50 74 | 72 43 6c 65 61 72 28 53 |tr(NewPt|rClear(S|
|00000e60| 49 5a 45 4f 46 0d 09 09 | 28 54 45 52 4d 49 4e 41 |IZEOF...|(TERMINA|
|00000e70| 4c 50 72 69 76 61 74 65 | 52 65 63 6f 72 64 29 29 |LPrivate|Record))|
|00000e80| 29 3b 0d 09 49 46 20 70 | 72 69 76 61 74 65 50 74 |);..IF p|rivatePt|
|00000e90| 72 20 3d 20 4e 49 4c 20 | 54 48 45 4e 0d 09 09 42 |r = NIL |THEN...B|
|00000ea0| 45 47 49 4e 0d 09 09 09 | 7b 20 53 6f 6d 65 74 68 |EGIN....|{ Someth|
|00000eb0| 69 6e 67 20 69 73 20 67 | 6f 6f 66 79 20 77 69 74 |ing is g|oofy wit|
|00000ec0| 68 20 6d 65 6d 6f 72 79 | 20 61 6c 6c 6f 63 61 74 |h memory| allocat|
|00000ed0| 69 6f 6e 2c 20 62 65 74 | 74 65 72 0d 09 09 09 09 |ion, bet|ter.....|
|00000ee0| 6c 65 74 20 65 76 65 72 | 79 62 6f 64 79 20 6b 6e |let ever|ybody kn|
|00000ef0| 6f 77 2c 20 69 6e 63 6c | 75 64 69 6e 67 20 74 68 |ow, incl|uding th|
|00000f00| 65 20 54 65 72 6d 69 6e | 61 6c 20 4d 67 72 2c 20 |e Termin|al Mgr, |
|00000f10| 0d 09 09 09 09 74 68 65 | 6e 20 65 78 69 74 2e 20 |.....the|n exit. |
|00000f20| 7d 0d 09 09 09 68 54 65 | 72 6d 5e 5e 2e 65 72 72 |}....hTe|rm^^.err|
|00000f30| 43 6f 64 65 20 3a 3d 20 | 4d 65 6d 45 72 72 6f 72 |Code := |MemError|
|00000f40| 3b 0d 09 09 09 54 65 72 | 6d 54 6f 6f 6c 49 6e 69 |;....Ter|mToolIni|
|00000f50| 74 20 3a 3d 20 4c 6f 6e | 67 49 6e 74 28 4d 65 6d |t := Lon|gInt(Mem|
|00000f60| 45 72 72 6f 72 29 3b 0d | 09 09 09 45 78 69 74 28 |Error);.|...Exit(|
|00000f70| 54 65 72 6d 54 6f 6f 6c | 49 6e 69 74 29 3b 0d 09 |TermTool|Init);..|
|00000f80| 09 45 4e 44 0d 09 45 4c | 53 45 09 7b 20 73 6f 20 |.END..EL|SE.{ so |
|00000f90| 66 61 72 2c 20 73 6f 20 | 67 6f 6f 64 20 7d 0d 09 |far, so |good }..|
|00000fa0| 09 42 45 47 49 4e 0d 09 | 09 09 74 68 65 50 72 6f |.BEGIN..|..thePro|
|00000fb0| 63 49 44 20 3a 3d 20 68 | 54 65 72 6d 5e 5e 2e 70 |cID := h|Term^^.p|
|00000fc0| 72 6f 63 49 44 3b 09 7b | 20 77 68 69 63 68 20 74 |rocID;.{| which t|
|00000fd0| 6f 6f 6c 3f 20 7d 0d 09 | 09 09 53 74 72 52 65 73 |ool? }..|..StrRes|
|00000fe0| 49 44 20 3a 3d 20 43 52 | 4d 4c 6f 63 61 6c 54 6f |ID := CR|MLocalTo|
|00000ff0| 52 65 61 6c 49 44 28 43 | 6c 61 73 73 54 4d 2c 20 |RealID(C|lassTM, |
|00001000| 74 68 65 50 72 6f 63 49 | 44 2c 20 0d 09 09 09 09 |theProcI|D, .....|
|00001010| 27 53 54 52 23 27 2c 20 | 76 65 72 55 53 29 3b 20 |'STR#', |verUS); |
|00001020| 09 7b 20 6c 65 74 27 73 | 20 75 73 65 20 74 68 65 |.{ let's| use the|
|00001030| 20 43 6f 6d 6d 52 65 73 | 6f 75 72 63 65 00 00 00 | CommRes|ource...|
|00001040| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001050| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001060| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001070| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+